1. Field of the Invention
The present invention generally relates to software usage and, more specifically, to displaying resources based on shared contexts.
2. Description of the Related Art
A wide variety of software applications are currently available to end-users, including computer-aided design (CAD) applications, computer graphics applications, animation applications, word processing applications, and computer programming applications, among others. Many of these software applications are provided with a “help” database that provides an end-user with information related to the usage of the software application. For example, a help database associated with a CAD application may include a tutorial that teaches an end-user how to construct different geometrical shapes.
A conventional help database typically allows an end-user to search for different help topics by inputting one or more keywords into a query window. Search software searches the help database based on the one or more keywords and returns a list of topics to the end-user. The end-user may then view help files associated with each returned topic. For example, an end-user of a CAD application may search for “shapes” and be provided with a list of topics that includes “drawing triangles,” “drawing squares,” and so forth. Each topic provided by the help database may be associated with a help file, such as a narrative that describes how to use a particular feature of the software application, a screenshot that illustrates the particular feature, or other information that enables the end-user to learn to use the software application. The pool of help files provided by the help database is typically limited in scope to a finite number of topics. Additionally, the pool of help files typically cannot be expanded to include additional help files.
Some conventional help databases are configured to automatically provide an end-user with help files related to an action currently being performed by the user. For example, if an end-user of a word processing application types a date in the upper right-hand corner of a page, then an automated help program may be triggered to provide the end-user with a help file related to letter writing. Similarly to the help database described above, the pool of help files associated with the automated help program is typically limited in scope and cannot be expanded to include additional help files.
One drawback of conventional approaches is that the pool of help files shipped with a particular application only addresses certain topics. Thus, in situations where the pool of help files does not include a help file pertinent to a particular problem encountered by the end-user, the end-user may never obtain information helpful to solving that problem. Another drawback of conventional approaches is that the original pool of help files cannot be expanded to include additional help files. Therefore, the help database may never include information related to a particular problem if that problem is unaddressed by the pool of help files.
As the foregoing illustrates, there is a need in the art for a more effective way to provide guidance to users of software applications.